package com.transaction.manage.model.dto;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

@Table(name = "fund_relation")
public class FundRelation implements Serializable {
    @Id
    private Integer id;

    /**
     * 渠道编码
     */
    @Column(name = "channel_code")
    private String channelCode;
    private String channelName;

    /**
     * 产品编码
     */
    @Column(name = "fund_code")
    private String fundCode;
    private String fundName;

    /**
     * TA产品编码
     */
    @Column(name = "ta_fund_code")
    private String taFundCode;

    /**
     * TA产品名称
     */
    @Column(name = "ta_fund_name")
    private String taFundName;

    /**
     * ta产品是否成立;0:否；1：是
     */
    @Column(name = "set_up_flag")
    private Integer setUpFlag;

    /**
     * 操作状态；01：新增；02：修改；00：删除
     */
    @Column(name = "valid_flag")
    private String validFlag;

    /**
     * 复核状态；00：未复核；01：已复核
     */
    @Column(name = "check_flag")
    private String checkFlag;

    private Date utime;

    private static final long serialVersionUID = 1L;

    /**
     * @return id
     */
    public Integer getId() {
        return id;
    }

    /**
     * @param id
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取渠道编码
     *
     * @return channel_code - 渠道编码
     */
    public String getChannelCode() {
        return channelCode;
    }

    /**
     * 设置渠道编码
     *
     * @param channelCode 渠道编码
     */
    public void setChannelCode(String channelCode) {
        this.channelCode = channelCode;
    }

    public String getChannelName() {
        return channelName;
    }

    public void setChannelName(String channelName) {
        this.channelName = channelName;
    }

    /**
     * 获取产品编码
     *
     * @return fund_code - 产品编码
     */
    public String getFundCode() {
        return fundCode;
    }

    /**
     * 设置产品编码
     *
     * @param fundCode 产品编码
     */
    public void setFundCode(String fundCode) {
        this.fundCode = fundCode;
    }

    public String getFundName() {
        return fundName;
    }

    public void setFundName(String fundName) {
        this.fundName = fundName;
    }

    /**
     * 获取TA产品编码
     *
     * @return ta_fund_code - TA产品编码
     */
    public String getTaFundCode() {
        return taFundCode;
    }

    /**
     * 设置TA产品编码
     *
     * @param taFundCode TA产品编码
     */
    public void setTaFundCode(String taFundCode) {
        this.taFundCode = taFundCode;
    }

    /**
     * 获取TA产品名称
     *
     * @return ta_fund_name - TA产品名称
     */
    public String getTaFundName() {
        return taFundName;
    }

    /**
     * 设置TA产品名称
     *
     * @param taFundName TA产品名称
     */
    public void setTaFundName(String taFundName) {
        this.taFundName = taFundName;
    }

    /**
     * 获取ta产品是否成立;0:否；1：是
     *
     * @return set_up_flag - ta产品是否成立;0:否；1：是
     */
    public Integer getSetUpFlag() {
        return setUpFlag;
    }

    /**
     * 设置ta产品是否成立;0:否；1：是
     *
     * @param setUpFlag ta产品是否成立;0:否；1：是
     */
    public void setSetUpFlag(Integer setUpFlag) {
        this.setUpFlag = setUpFlag;
    }

    /**
     * 获取操作状态；01：新增；02：修改；00：删除
     *
     * @return valid_flag - 操作状态；01：新增；02：修改；00：删除
     */
    public String getValidFlag() {
        return validFlag;
    }

    /**
     * 设置操作状态；01：新增；02：修改；00：删除
     *
     * @param validFlag 操作状态；01：新增；02：修改；00：删除
     */
    public void setValidFlag(String validFlag) {
        this.validFlag = validFlag;
    }

    /**
     * 获取复核状态；00：未复核；01：已复核
     *
     * @return check_flag - 复核状态；00：未复核；01：已复核
     */
    public String getCheckFlag() {
        return checkFlag;
    }

    /**
     * 设置复核状态；00：未复核；01：已复核
     *
     * @param checkFlag 复核状态；00：未复核；01：已复核
     */
    public void setCheckFlag(String checkFlag) {
        this.checkFlag = checkFlag;
    }

    /**
     * @return utime
     */
    public Date getUtime() {
        return utime;
    }

    /**
     * @param utime
     */
    public void setUtime(Date utime) {
        this.utime = utime;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", channelCode=").append(channelCode);
        sb.append(", fundCode=").append(fundCode);
        sb.append(", taFundCode=").append(taFundCode);
        sb.append(", taFundName=").append(taFundName);
        sb.append(", setUpFlag=").append(setUpFlag);
        sb.append(", validFlag=").append(validFlag);
        sb.append(", checkFlag=").append(checkFlag);
        sb.append(", utime=").append(utime);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}